*****Replication code for Fundraising for Stigmatized Groups: A Text Message Donation Experiment****


**This do-file replicates the results, tables, and figures (in the text and in
**the online appendix) for the APSR article, "Fundraising for Stigmatized Groups: A Text Message Donation Experiment" by 
**Katerina Linos, Laura Jakli, and Melissa Carlson.

**download these packages for the code run

**ssc install coefplot, replace
**ssc install mplotoffset, replace
**ssc inst tabstatmat, replace


**setting up some aesthetics for the figures 

grstyle init
grstyle gsize heading small
grstyle graphsize x small
grstyle graphsize y small
grstyle gsize axis_title  vsmall
grstyle gsize tick_label small
grstyle gsize key_label small
grstyle gsize small_body vsmall
grstyle linewidth tick small
grstyle gsize text_option small



use "SMS_mainvars.dta", clear


******************************************************
**general descriptives discussed in the main text
******************************************************

**1,051 unique zip codes
unique zip if resp !=.

**18.6% of recipients live in a ZIP with informal Roma communities exceeding a population of 100
tab Roma_Settlement_ZIP_100inf

**25.2% of recipients live in a ZIP with any type of Roma communities exceeding a population of 100
tab Roma_Settlement_ZIP_100

**291 unique SMS respondents (e.g., donors)
count if resp !=0

count if donated !=0

***************************


**********************************************************************************************************************
****CODE TO PRODUCE TABLES & FIGURES IN MANUSCRIPT TEXT AND THEIR ACCOMPANYING CHECKS IN APPENDIX I, II, and III


****************************************
**** TABLES I.1 & I.2 in Appendix I ****
****************************************

**Data and code may be provided upon request. This data was provided, in confidence, by Roma advocacy associations and contains highly sensitive information on Roma communities.



****************************************
**** Figures I.1 - I.3 in Appendix I ****
****************************************
**********************************************************************************************************************

**See SMS_Appendix_I.EurobarometeerFigures.do

**********************************
**** TABLE I.3 in Appendix I (p.6)****
**********************************
 
*** Demographic characteristics of the 1,051 ZIP codes that received 
*** experimental text messages with and without Roma communities.

***Calculating the means, 10th, and 90th percentiles***
estpost tabstat (Attica CentralMacedonia IntNetInd_Income  Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K), by (Roma_Settlement_ZIP_100inf) stat(mean, p10, p90) col(stat) nototal
esttab .  using TableI3.tex, wide style(tex) cell("mean(fmt(2 2 0 2 2 2 2))" "p10(fmt(2 2 0 2 2 2 2))"  "p90(fmt(2 2 0 2 2 2 2))") unstack replace


***Calculating the differences in means and their significance levels***
estpost ttest (Attica CentralMacedonia IntNetInd_Income  Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K), by (Roma_Settlement_ZIP_100inf) 
esttab . using TableI3diffs.tex, wide style(tex) replace



**********************************************************************************************************************

****************************
**** TABLE II.1 in Appendix II (p.8) ****
****************************

*This table presents means of demographic characteristic by treatment groups.

****Includes means, totals, and 10th and 90th percentiles
estpost tabstat (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3, by (SMS) stat (mean, p10, p90) col(stat) 
esttab .  using TableII1.tex, wide style(tex) cell(mean(fmt(1 3 3 3 0 3 3 3 3 3)) "p10(fmt(1 3 3 3 0 3 3 3 3 3))"  "p90(fmt(1 3 3 3 0 3 3 3 3 3))") unstack replace




****************************
**** TABLE II.2 in Appendix II (p.9) ****
****************************
****one-way ANOVA for each demographic characteristic (note: no group mean statistically significant compared to others)

oneway Age SMS
oneway male SMS
oneway Attica SMS
oneway CentralMacedonia SMS
oneway IntNetInd_Income SMS
oneway Percent_Child_Poverty_2013_2014  SMS
oneway Over20KUnder40K SMS
oneway Over40KUnder80K SMS
oneway Over80K SMS
oneway Roma_Settlement_ZIP_100inf SMS




****************************
**** TABLE II.3 in Appendix II (p.10) ****
****************************
*This table presents a logistic regression predicting assignment to treatment as an additional randomization check.

tab SMS, gen(smscategories)

logistic smscategories1 (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3 
est store OR
outreg2 [OR]  using TableII3.tex, replace stats(coef se) eform alpha(0.01, 0.05, 0.10) dec(2) lab ct (Greek Child)

logistic smscategories2 (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3
est store OR
outreg2 [OR] using TableII3.tex, append stats(coef se) eform alpha(0.01, 0.05, 0.10) dec(2) lab ct (Greek Rights)

logistic  smscategories3  (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3
est store OR
outreg2 [OR] using TableII3.tex, append stats(coef se) eform alpha(0.01, 0.05, 0.10) dec(2) lab ct (hild)

logistic  smscategories4  (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3 
est store OR
outreg2 [OR] using TableII3.tex, append stats(coef se) eform alpha(0.01, 0.05, 0.10) dec(2) lab ct (Child Rights)

logistic  smscategories5 (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3 
est store OR
outreg2 [OR] using TableII3.tex, append stats(coef se) eform alpha(0.01, 0.05, 0.10) dec(2) lab ct (Roma Child)

logistic  smscategories6  (Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3
est store OR
outreg2 [OR] using TableII3.tex, append stats(coef se) eform alpha(0.01, 0.05, 0.10) dec(2) lab ct (Roma Rights)





****************************
**** TABLE II.4 in Appendix II (p.11) ****
****************************

****make six dummies, one for each SMS treatment, then run a regression with the ZIP code 
****level characteristic as outcome variables and five of the dummies as the explanatory variable. 


mvreg Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf = smscategories1 smscategories2 smscategories3 smscategories4 smscategories5 
esttab using TableII4.tex, cells(b(star fmt(2)) se(par fmt(2))) unstack starlevels(* 0.10 ** 0.05 *** 0.01) replace

****This is followed by a Wald test to test whether the coefficients are all the same.
test smscategories1 smscategories2 smscategories3 smscategories4 smscategories5 


*******************************************************************************************************************************
***create NEWSMS variable by encoding string var SMS to create figures/tables in text

encode SMS,  gen(NEWSMS)
tab SMS

****pool treatments across ethnic and rights frames
gen pooled = "Roma" if SMS=="Roma Child" | SMS=="Roma Rights"
replace pooled = "Greek" if SMS=="Greek Child" | SMS=="Greek Rights"
replace pooled = "Neutral" if SMS=="Neutral Child" | SMS=="Neutral Rights"

encode pooled,  gen(newpool)


*******************************************************
****MAIN TEXT FIGURE 2 & ITS APPENDIX (Table II.5)*****
*******************************************************

**************************************
******APPENDIX II, Table II.5 (p.16) ********
**************************************

****M1****
****logit, no controls
logistic donated ib6.NEWSMS 
est store OR
outreg2 [OR]  using Table_II5, tex replace stats(coef se) eform alpha(0.01, 0.05, 0.10) 

****M2****
*****logit, with controls (basis for FIG 2)
logistic donated ib6.NEWSMS Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K
est store OR
outreg2 [OR]  using Table_II5, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10) 


****M3****
***OLS, no controls
regress donated ib6.NEWSMS 
est store OR
outreg2 [OR]  using Table_II5, tex append stats(coef se) 


****M4****
***OLS, with controls
regress donated ib6.NEWSMS Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K
est store OR
outreg2 [OR]  using Table_II5, tex append stats(coef se) 



**************************************
*******FIG 2 ITT in main text ********
**************************************


***create an indicator for if the treatment included an appeal to fundamental rights
gen rights = 0
replace rights = 1 if  SMS=="Roma Rights" | SMS=="Greek Rights" | SMS=="Neutral Rights"
tab rights


logistic donated ib3.newpool  Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K if rights==0
est store OR
outreg2 [OR]  using Fig2_ITT, tex replace stats(coef se) eform alpha(0.01, 0.05, 0.10) 
margins i.newpool, post
estimates store D

logistic donated ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K if rights==1
est store OR
outreg2 [OR]  using Fig2_ITT, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10) 
margins i.newpool, post
estimates store E


coefplot (D, label(No Appeal) ///
						levels(95) ///
		pstyle(p3) msymbol(T) offset(0.05)) ///
	(E, label(Rights Appeal) ///
						levels(95) ///
	pstyle(p4) msymbol(S) offset(-0.05)) ///
  ,  drop(_cons)  xline(0)  scheme(lean1) ///
  coeflabels(1.newpool= "In-Group (Greek Child)" 2.newpool= "Control Group (Child)" 3.newpool= "Out-Group (Roma Child)") ///
  ylabel( ,labsize(small)) ///
  xlabel(0 "0.0%" .001 "0.1%" .002 "0.2%" .003 "0.3%" .004 "0.4%" .005 "0.5%" .006 "0.6%" .007 "0.7%" .008 "0.8%" ,labsize(small)) ///
  legend(size(small))


*****************************************************
****Fig 2 with controls in Appendix II, Fig II.1 (p.12) ****
*****************************************************


logistic donated ib3.newpool if rights==0
est store OR
outreg2 [OR]  using Fig2_controls, tex replace stats(coef se) eform alpha(0.01, 0.05, 0.10) 
margins i.newpool, post
estimates store PP

logistic donated ib3.newpool if rights==1
est store OR
outreg2 [OR]  using Fig2_controls, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10) 
margins i.newpool, post
estimates store TT 
  

coefplot (PP, label(No Appeal) ///
						levels(95) ///
		pstyle(p3) msymbol(T) offset(0.05)) ///
	(TT, label(Rights Appeal) ///
							levels(95) ///
	pstyle(p4) msymbol(S) offset(-0.05)) ///
  ,  drop(_cons) xline(0) scheme(lean1) ///
    coeflabels(1.newpool= "In-Group (Greek Child)" 2.newpool= "Control Group (Child)" 3.newpool= "Out-Group (Roma Child)") ///
  ylabel( ,labsize(small)) ///
  xlabel(0 "0.0%" .001 "0.1%" .002 "0.2%" .003 "0.3%" .004 "0.4%" .005 "0.5%" .006 "0.6%" .007 "0.7%" .008 "0.8%" ,labsize(small)) ///
    legend(size(small))

  
******************************************************************************************************************************* 
 
  

  

*******************************************************
****MAIN TEXT FIGURE 4 & ITS APPENDIX (Table II.6)*****
*******************************************************


**************************************
******APPENDIX II, Table II.6 (p.17)********
**************************************

****M1****
***logit, no controls, no interaction
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf 
est store OR
outreg2 [OR]  using Table_II6, tex replace stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M2****
***logit, no controls, w/interaction
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool
est store OR
outreg2 [OR]  using Table_II6, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M3****  
**basis for Fig 4, logit, w/interaction and controls
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
est store OR
outreg2 [OR]  using Table_II6, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M4****  
**logit, no interaction, w/controls
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
est store OR
outreg2 [OR]  using Table_II6, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M5****  
***OLS, w/interaction and controls
regress donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
est store OR
outreg2 [OR]  using Table_II6, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   


  
**************************************
*******FIG 4 in main text ********
**************************************

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins i.newpool, at(Roma_Settlement_ZIP_100inf = (0))  post
estimates store N

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins i.newpool, at(Roma_Settlement_ZIP_100inf = (1))  post
estimates store O

coefplot (O, label(Roma Community) ///
				levels(95) ///
		pstyle(p3) msymbol(T) offset(0.05)) ///
	(N, label(No Roma Community) ///
	levels(95) ///
	pstyle(p4) msymbol(S) offset(-0.05)) ///
  ,  drop(_cons) xline(0) scheme(lean1) ///
      coeflabels(1.newpool= "In-Group (Greek Child)" 2.newpool= "Control Group (Child)" 3.newpool= "Out-Group (Roma Child)") ///
  ylabel( ,labsize(small)) ///
  xlabel(0 "0.0%" .001 "0.1%" .002 "0.2%" .003 "0.3%" .004 "0.4%" .005 "0.5%" .006 "0.6%" .007 "0.7%" .008 "0.8%" ,labsize(small)) ///
    legend(size(small))
  

  
*****************************************************
   ****Fig 4 ITT in Appendix II, Fig II.2 (p.13)****
*****************************************************  
  

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool 
margins i.newpool, at(Roma_Settlement_ZIP_100inf = (0))  post
estimates store BBB


logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool
margins i.newpool, at(Roma_Settlement_ZIP_100inf = (1))  post
estimates store CCC

coefplot (CCC, label(Roma Community) ///
		pstyle(p3) msymbol(T) offset(0.05)) ///
	(BBB, label(No Roma Community)  ///
	pstyle(p4) msymbol(S) offset(-0.05)) ///
  ,  drop(_cons) xline(0) scheme(lean1) ///
       coeflabels(1.newpool= "In-Group (Greek Child)" 2.newpool= "Control Group (Child)" 3.newpool= "Out-Group (Roma Child)") ///
  ylabel( ,labsize(small)) ///
  xlabel(0 "0.0%" .001 "0.1%" .002 "0.2%" .003 "0.3%" .004 "0.4%" .005 "0.5%" .006 "0.6%" .007 "0.7%" .008 "0.8%" ,labsize(small)) ///
    legend(size(small))
  
 



******************************************************************************************************************************************************************************************************************

*****************************************************
****Fig II.3 and Table II.7, Appendix II****
*****************************************************  


*****************************************************
   ****** Appendix II, Table II.7  (p.18)********
*****************************************************

****M1****
***logit, no controls, no interaction
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100
est store OR
outreg2 [OR]  using Table_II7, tex replace stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M2****
***logit, no controls, w/interaction
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool
est store OR
outreg2 [OR]  using Table_II7, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   
 
****M3****
***basis for Fig II.3, logit, w/controls & interaction  
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
est store OR
outreg2 [OR]  using Table_II7, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M4****
***logit, w/controls, no interaction  
logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100 Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
est store OR
outreg2 [OR]  using Table_II7, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   

****M5****
***OLS, w/controls & interaction
regress donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
est store OR
outreg2 [OR]  using Table_II7, tex append stats(coef se) eform alpha(0.01, 0.05, 0.10)   



***************************************************** 
    **** FIG II.3 in Appendix II  (p.14)****
*****************************************************


logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins i.newpool, at(Roma_Settlement_ZIP_100 = (0))  post
estimates store A

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins i.newpool, at(Roma_Settlement_ZIP_100 = (1))  post
estimates store B

coefplot (B, label(Roma Community) ///
				levels(95) ///
		pstyle(p3) msymbol(T) offset(0.05)) ///
	(A, label(No Roma Community) ///
	levels(95) ///
	pstyle(p4) msymbol(S) offset(-0.05)) ///
  ,  drop(_cons) xline(0) scheme(lean1) ///
      coeflabels(1.newpool= "In-Group (Greek Child)" 2.newpool= "Control Group (Child)" 3.newpool= "Out-Group (Roma Child)") ///
  ylabel( ,labsize(small)) ///
  xlabel(0 "0.0%" .001 "0.1%" .002 "0.2%" .003 "0.3%" .004 "0.4%" .005 "0.5%" .006 "0.6%" .007 "0.7%" .008 "0.8%" ,labsize(small)) ///
    legend(size(small))




******************************************************************************************************************************************************************************************************************

***Appendix II, FIGURE II.4 (p.15)***

**Differences of the predictive margins for pooled SMS treatments, near and far from Roma communities**

***TOP SUBFIGURE (INFORMAL COMMUNITIES AT 9 DIFFERENT POPULATION THRESHOLDS)***
***ONLY REPRODUCING 100-250 (7 THRESHOLDS) TO PROTECT ANONYMITY OF SMALLER ROMA COMMUNITIES***



logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_100inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_hundred_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_100inf, contrast(pveffects) at(newpool=(2)) post
estimates store inf_hundred_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100inf i.Roma_Settlement_ZIP_100inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_100inf, contrast(pveffects)  at(newpool=(3)) post
estimates store inf_hundred_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_125inf i.Roma_Settlement_ZIP_125inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_125inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_onetwentyfive_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_125inf i.Roma_Settlement_ZIP_125inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_125inf, contrast(pveffects)  at(newpool=(2)) post
estimates store inf_onetwentyfive_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_125inf i.Roma_Settlement_ZIP_125inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_125inf, contrast(pveffects)  at(newpool=(3)) post
estimates store inf_onetwentyfive_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_150inf i.Roma_Settlement_ZIP_150inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_150inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_onefifty_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_150inf i.Roma_Settlement_ZIP_150inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_150inf, contrast(pveffects)  at(newpool=(2)) post
estimates store inf_onefifty_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_150inf i.Roma_Settlement_ZIP_150inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_150inf, contrast(pveffects)  at(newpool=(3)) post
estimates store inf_onefifty_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_175inf i.Roma_Settlement_ZIP_175inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_175inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_oneseventyfive_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_175inf i.Roma_Settlement_ZIP_175inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_175inf, contrast(pveffects)  at(newpool=(2)) post
estimates store inf_oneseventyfive_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_175inf i.Roma_Settlement_ZIP_175inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_175inf, contrast(pveffects) at(newpool=(3)) post
estimates store inf_oneseventyfive_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_200inf i.Roma_Settlement_ZIP_200inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_200inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_twohundred_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_200inf i.Roma_Settlement_ZIP_200inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_200inf, contrast(pveffects)  at(newpool=(2)) post
estimates store inf_twohundred_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_200inf i.Roma_Settlement_ZIP_200inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_200inf, contrast(pveffects)  at(newpool=(3)) post
estimates store inf_twohundred_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_225inf i.Roma_Settlement_ZIP_225inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_225inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_twotwentyfive_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_225inf i.Roma_Settlement_ZIP_225inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_225inf, contrast(pveffects)  at(newpool=(2)) post
estimates store inf_twotwentyfive_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_225inf i.Roma_Settlement_ZIP_225inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_225inf, contrast(pveffects)  at(newpool=(3)) post
estimates store inf_twotwentyfive_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_250inf i.Roma_Settlement_ZIP_250inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_250inf, contrast(pveffects)  at(newpool=(1)) post
estimates store inf_twofifty_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_250inf i.Roma_Settlement_ZIP_250inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_250inf, contrast(pveffects)  at(newpool=(2)) post
estimates store inf_twofifty_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_250inf i.Roma_Settlement_ZIP_250inf##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_250inf, contrast(pveffects)  at(newpool=(3)) post
estimates store inf_twofifty_ro


  
  
  
coefplot (inf_hundred_gr, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(inf_hundred_ch, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///	
		(inf_hundred_ro, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
			(inf_onetwentyfive_gr, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(inf_onetwentyfive_ch, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
		(inf_onetwentyfive_ro, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(inf_onefifty_gr, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
			(inf_onefifty_ch, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
			(inf_onefifty_ro, nokey ///
			    levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(inf_oneseventyfive_gr, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(inf_oneseventyfive_ch, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
		(inf_oneseventyfive_ro, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(inf_twohundred_gr, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
			(inf_twohundred_ch, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
			(inf_twohundred_ro,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(inf_twotwentyfive_gr, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(inf_twotwentyfive_ch, nokey  ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
		(inf_twotwentyfive_ro,nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(inf_twofifty_gr,  label("Greek Child") ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
				(inf_twofifty_ch, label("Child") ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
				(inf_twofifty_ro, label("Roma Child") ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
  ,   drop(_cons) yline(0)  scheme(lean1) vertical ///
    ylabel(-.004 "-0.40%" -.002 "-0.20%"  0 "0.00%" .002 "0.20%" .004 "0.40%" ,labsize(small)) ///
	xlabel(1 "100+ Roma" 2 "125+ Roma" 3 "150+ Roma" 4 "175+ Roma" 5 "200+ Roma" 6 "225+ Roma" 7 "250+ Roma" ,labsize(vsmall)) ///
	 legend(size(small))
  
 

***BOTTOM SUBFIGURE (ALL COMMUNITIES AT 9 DIFFERENT POPULATION THRESHOLDS)***  
***ONLY REPRODUCING 100-250 (7 THRESHOLDS) TO PROTECT ANONYMITY OF SMALLER ROMA COMMUNITIES***



logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_100, contrast(pveffects) at(newpool=(1)) post
estimates store hundred_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_100, contrast(pveffects) at(newpool=(2)) post
estimates store hundred_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_100 i.Roma_Settlement_ZIP_100##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_100, contrast(pveffects) at(newpool=(3)) post
estimates store hundred_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_125 i.Roma_Settlement_ZIP_125##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_125, contrast(pveffects) at(newpool=(1)) post
estimates store onetwentyfive_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_125 i.Roma_Settlement_ZIP_125##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_125, contrast(pveffects) at(newpool=(2)) post
estimates store onetwentyfive_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_125 i.Roma_Settlement_ZIP_125##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_125, contrast(pveffects) at(newpool=(3)) post
estimates store onetwentyfive_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_150 i.Roma_Settlement_ZIP_150##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_150, contrast(pveffects) at(newpool=(1)) post
estimates store onefifty_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_150 i.Roma_Settlement_ZIP_150##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_150, contrast(pveffects) at(newpool=(2)) post
estimates store onefifty_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_150 i.Roma_Settlement_ZIP_150##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_150, contrast(pveffects) at(newpool=(3)) post
estimates store onefifty_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_175 i.Roma_Settlement_ZIP_175##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_175, contrast(pveffects) at(newpool=(1)) post
estimates store oneseventyfive_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_175 i.Roma_Settlement_ZIP_175##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_175, contrast(pveffects) at(newpool=(2)) post
estimates store oneseventyfive_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_175 i.Roma_Settlement_ZIP_175##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_175, contrast(pveffects) at(newpool=(3)) post
estimates store oneseventyfive_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_200 i.Roma_Settlement_ZIP_200##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_200, contrast(pveffects) at(newpool=(1)) post
estimates store twohundred_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_200 i.Roma_Settlement_ZIP_200##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_200, contrast(pveffects) at(newpool=(2)) post
estimates store twohundred_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_200 i.Roma_Settlement_ZIP_200##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_200, contrast(pveffects) at(newpool=(3)) post
estimates store twohundred_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_225 i.Roma_Settlement_ZIP_225##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_225, contrast(pveffects) at(newpool=(1)) post
estimates store twotwentyfive_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_225 i.Roma_Settlement_ZIP_225##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_225, contrast(pveffects) at(newpool=(2)) post
estimates store twotwentyfive_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_225 i.Roma_Settlement_ZIP_225##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_225, contrast(pveffects) at(newpool=(3)) post
estimates store twotwentyfive_ro

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_250 i.Roma_Settlement_ZIP_250##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_250, contrast(pveffects) at(newpool=(1)) post
estimates store twofifty_gr

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_250 i.Roma_Settlement_ZIP_250##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_250, contrast(pveffects) at(newpool=(2)) post
estimates store twofifty_ch

logistic donated  ib3.newpool i.Roma_Settlement_ZIP_250 i.Roma_Settlement_ZIP_250##ib3.newpool Age male Attica CentralMacedonia IntNetInd_Income Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K 
margins ib0.Roma_Settlement_ZIP_250, contrast(pveffects) at(newpool=(3)) post
estimates store twofifty_ro

  
  
  
coefplot (hundred_gr,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(hundred_ch,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///	
		(hundred_ro,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
			(onetwentyfive_gr,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(onetwentyfive_ch,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
		(onetwentyfive_ro,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
	   (onefifty_gr,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
			(onefifty_ch,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
			(onefifty_ro,  nokey ///
			    levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(oneseventyfive_gr,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(oneseventyfive_ch,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
		(oneseventyfive_ro, nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(twohundred_gr,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
			(twohundred_ch,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
			(twohundred_ro,   nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(twotwentyfive_gr,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
		(twotwentyfive_ch,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
		(twotwentyfive_ro,  nokey ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
		(twofifty_gr,  label("Greek Child") ///
				levels(95 90) ///
		pstyle(p3) msymbol(T) offset(-0.2)) ///
				(twofifty_ch, label("Child") ///
				levels(95 90) ///
		pstyle(p3) msymbol(S) offset(0)) ///
				(twofifty_ro, label("Roma Child") ///
				levels(95 90) ///
		pstyle(p3) msymbol(O) offset(0.2)) ///
  ,   drop(_cons) yline(0)  scheme(lean1) vertical ///
    ylabel(-.004 "-0.40%" -.002 "-0.20%"  0 "0.00%" .002 "0.20%" .004 "0.40%" ,labsize(small)) ///
	xlabel(1 "100+ Roma" 2 "125+ Roma" 3 "150+ Roma" 4 "175+ Roma" 5 "200+ Roma" 6 "225+ Roma" 7 "250+ Roma" ,labsize(vsmall)) ///
	 legend(size(small))
  

******************************************************************************************************************************************************************************************************************
 
*************************************
**** TABLE III.1 in Appendix III (p.20)****
*************************************
  

*This table presents demographic characteristics of Respondents vs. Non-Respondents.


***Calculating the means, 10th, and 90th percentiles***
estpost tabstat (Age male Attica CentralMacedonia IntNetInd_Income  Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3, by (donated) stat(mean, p10, p90) col(stat) nototal
esttab .  using TableIII1.tex, wide style(tex) cell("mean(fmt(0 2 2 2 0 2 2 2 2))" "p10(fmt(0 2 2 2 0 2 2 2 2 2))"  "p90(fmt(0 2 2 2 0 2 2 2 2 2))") unstack replace

***Calculating the differences in means and their significance levels***
estpost ttest  (Age male Attica CentralMacedonia IntNetInd_Income  Percent_Child_Poverty_2013_2014 Over20KUnder40K Over40KUnder80K Over80K Roma_Settlement_ZIP_100inf) if zip_demographics==3, by (donated)
esttab . using TableIII1diffs.tex, wide style(tex) replace


